home *** CD-ROM | disk | FTP | other *** search
- /* testswi.c - test swint function */
- #include "stdio.h"
- #include "cminor.h"
- #include "asmtools.h"
-
- int swint() ;
-
- main()
- {
- unsigned ret , int_no ;
- REGS sreg , dreg ;
-
- printf("\n testing swint \n") ;
- showadr("swint",swint) ;
- printf("\n & sreg = %x & dreg = %x \n",& sreg,& dreg) ;
-
- printf("\n int_no (HEX): \n") ;
- scanf ("%X",&int_no) ;
- getregs("input regs. ",&sreg) ;
- gerregs("return regs. ",&dreg) ;
- ret = swint(int_no,&sreg,&dreg) ;
- printf("\n swint returns - %X \n",ret) ;
- prtregs("input regs. ",&sreg) ;
- prtregs("return regs. ",&dreg) ;
- dispflag(ret) ;
- }
-
-
- int prtregs(name,p)
- char name[] ;
- REGS *p ;
- {
- printf(" %s values \n",name) ;
- printf(" ax bx cx dx %X %X %X %X \n",p->ax,p->bx,p->cx,p->dx) ;
- printf(" si di bp sp %X %X %X %X \n",p->si,p->di,p->bp,p->sp) ;
- printf(" ds es ss cs %X %X %X %X \n",p->ds,p->es,p->ss,p->cs) ;
- }
-
-
- int getregs(name,p)
- char name[] ;
- REGS *p ;
- {
- printf(" enter %s values ax bx cx dx si di bp sp ds es ss cs \n",
- name) ;
- scanf("%x %x %x %x",& p->ax,& p->bx,& p->cx,& p->dx) ;
- scanf("%x %x %x %x",& p->si,& p->di,& p->bp,& p->sp) ;
- scanf("%x %x %x %x",& p->ds,& p->es,& p->ss,& p->cs) ;
- }
-
-